Computerized training system

ABSTRACT

There is disclosed a training system for training people, for example to increase their ice skating skills or some other physical attribute. In a preferred embodiment, the training system comprises a computer and a database. The training system allows a user to enter information regarding his fitness. The system can then specify an exercise program for the user. The user can also enter information regarding his diet, in which case the system determines the suitability of the diet to the user. In order to psychologically motivate the user, the system provides a goal orientated method to facilitate the user to understand ways in which he can improve his performance. The system can also receive information regarding injuries and can take these into account when generating a training program and when assessing the user&#39;s diet. The system can also be used for the purpose of weight loss or gain.

REFERENCE TO PENDING APPLICATIONS

[0001] This application claims priority of UK Application No. 0306734.5,filed 24 Mar. 2003.

REFERENCE TO MICROFICHE APPENDIX

[0002] This application is not referenced in any microfiche appendix.

FIELD OF THE INVENTION

[0003] The present invention relates to a computerized system fordevising a training scheme for a sports person.

BACKGROUND OF THE INVENTION

[0004] It is a problem for an amateur sports person to select a trainingscheme appropriate to his/her sport. It is a fact that success in sportsis highly related to individual body measurements. For instance, it canbe seen that the anthropometrical differences between sprinters are farless than between sprinters and the general public. It is suggested thatthere is a specific idealized anthropometric and physiological profilefor the sport of sprinting. There will be different idealizedphysiological profiles for different sports. General training schemesare widely available, but it is not easy for the amateur sports personto arrive at a training scheme suitable both for his/her sport and alsohis/her current physiological profile. The present invention aims toaddress this.

BRIEF SUMMARY OF THE INVENTION

[0005] In a first aspect, the present invention provides a trainingsystem comprising: a database comprising information regarding therelevance of different physical activities to training categories; and aserver for transferring information between a user and the database.

[0006] In a second aspect, the present invention provides a trainingsystem comprising: a database comprising information regarding thenutritional content of different foodstuffs; and a server fortransferring information between a user and the database.

[0007] In a third aspect, the present invention provides a trainingsystem comprising: a database for storing information regarding a goalof a user; and a server for transferring information between a user andthe database.

[0008] In a fourth aspect, the present invention provides a trainingsystem comprising: a database for storing information regarding aninjury sustained by a user; and a server for transferring informationbetween a user and the database.

[0009] In a fifth aspect, the present invention provides a computerizedsystem for devising a training scheme for a sports person comprising:first computer means for processing data, which has a database whichstores for each of a plurality of sports a record of an idealizedphysiological profile; wherein: each sports person using the systeminputs a selection of a sport and, in response to enquiries generated bythe first computer means, information concerning his/her physiologicalprofile; and the first computer means compares the physiological profileinput by each sports person with the idealized physiological profile forthe relevant sport and from this comparison formulates a training regimewhich is relayed to the sports person.

BRIEF DESCRIPTION OF THE DRAWINGS

[0010]FIG. 1 shows a schematic illustration of a computerized trainingsystem;

[0011]FIG. 2 shows an introductory web page as seen by a user of thesystem;

[0012]FIG. 3 shows a fitness status assessment web page, for updatinginformation, as seen by the user;

[0013]FIG. 4 shows a fitness status assessment web page, for displayingan assessment of the user's fitness, as seen by the user;

[0014]FIG. 5 shows a web page for setting goals, as seen by the user;

[0015]FIG. 6 shows a web page for setting outcome goals, as seen by theuser;

[0016]FIG. 7 shows a graphical representation of what the user considersto be his strengths and weaknesses, as seen by the user;

[0017]FIG. 8 shows a goal completion web page, as seen by the user;

[0018]FIG. 9 shows a goal history web page, as seen by the user;

[0019]FIG. 10 shows an activity assessment web page, as seen by theuser;

[0020]FIG. 11 shows a detailed activity entry web page, as seen by theuser, for allowing the user to enter detailed activity information;

[0021]FIG. 12 shows an activity assessment overview web page, as seen bythe user, displaying an overview of the user's recent physical activity;

[0022]FIG. 13 shows a detailed activity assessment web page, as seen bythe user, displaying a detailed analysis of the user's activities;

[0023]FIG. 14 shows a diet web page, as seen by the user, for enteringdietary information;

[0024]FIG. 15 shows detailed diet web page, as seen by the user, forentering detailed dietary information;

[0025]FIG. 16 shows a nutrition assessment web page, as seen by theuser, which provides an assessment of the suitability of the user's dietwith regard to the number of calories deemed to be required by the user;

[0026]FIG. 17 shows a web page, as seen by the user, that suggestsappropriate changes, if deemed necessary, to the user's diet;

[0027]FIG. 18 shows a web page, as seen by the user, that allows theuser to indicate, at a coarse level, his intended training activity forthe next seven days, and allows the user to cause a proposed trainingschedule, tailored to his needs, to be generated;

[0028]FIG. 19 shows a web page, as seen by the user, that allows theuser to refine the training schedule generated;

[0029]FIG. 20 shows a web page, as seen by the user, that allows theuser to enter information regarding injuries that he has sustained;

[0030]FIG. 21 shows a web page, as seen by the user, that allows theuser to enter more detailed information regarding injuries that he hassustained;

[0031]FIGS. 22a to 22 d show the database structure of a database of thetraining system, with FIG. 22 showing how FIGS. 22a to 22 d should beassembled; and

[0032]FIG. 23 shows a schematic illustration of a second embodiment of acomputerized training system.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0033]FIG. 1 is a schematic illustration of an embodiment 100 of thetraining system.

[0034] The training system allows a user to enter informationconcerning: (i) “goals” (a goal may be, for example, winning a nationalsports competition, or losing weight), (ii) details of his currentheight, weight and fitness, (iii) details of injuries he has sustained,(iv) details of his physical activity during recent days, and (v)details of his food intake over recent days.

[0035] The system processes the information entered by the user andoutputs information to the user concerning: i) an assessment of thesuitability of his diet, (ii) an assessment of his fitness relative tothe fitness of his assumed peers, and (iii) a suggested trainingprogram.

[0036] The system comprises a server 101 which is connected to apersonal computer (PC) 102 by a communications link 112. In thisembodiment the server 101 implements a relational database 110 and runssoftware that implements the training system. In this embodiment of thesystem the database 110 is shown as being a constituent part of theserver 101 although in alterative embodiments the database 110 may beseparate from the server 101.

[0037] The PC 102 is operated by a user of the system and allows theuser to send data to the server 101 and to receive data from the server101. Data received by the server 101 from the PC 102 can be stored on ahard disk (not shown).

[0038] The server 101 is also connected by a communications link 113 toa payment server 103. A user pays to use the system 100 by enteringtheir credit card details at the PC 102. The credit card details arethen encrypted by known means and transferred over the communicationslink 112 to the server 101 and then transferred from the server 101 overthe telecommunications link 113 to the payment server 103.

[0039] In this embodiment the communications links 112, 113 bothcomprise the internet. When a user contacts the server 101, his PC 102requests an internet web page from the server 101. The server 101 thengenerates a web page and transfers the web page over the communicationlink 112 to the PC 102 for display. The PC 102 uses suitable softwaresuch as Internet Explorer or Mozilla to display the web page. In thisembodiment the server 102 uses “Flash” software from the companyMacromedia, Inc. to embed multimedia objects in the web page. Theembedded objects in turn are able to prompt the user to enterinformation, and are operable to cause the PC 102 to transfer theentered information to the server 101. The user can use different partsof the system 100 by selecting icons on the web pages, for example byusing a pointer device such as a mouse and “clicking” the icon. Inresponse to the icon selected, the server 101 then generates theappropriate web page. On some web pages generated by the server 101, theweb pages contain “buttons” instead of icons. A button is not a physicalbutton but is a region of the web page that can be selected by the userusing a pointing device such as a computer mouse. Unlike icons, buttonsdo not graphically represent their function.

[0040] In this embodiment the database is implemented using the “MySQL”software package available from the company MySQL.com. The majority ofthe training system 100 is implemented using the Java programminglanguage available from the company Sun. Thus the Flash softwareprovides a graphical user interface for the Java software, while theMySQL implements the database 110.

[0041] Creating an Account

[0042] To create an account (also known as “registering”) with theserver 101, the user asks the server 101 to establish a new account forhim. The server 101 prompts the user, via Flash objects embedded in aweb page, for relevant information such as: (i) his first name, (ii) hissurname, (iii) his age, (iv) his email address, (v) his postal address,(vi) a password which he can use on future occasions to authenticatehimself to the server 101, and (vii) his credit card details.

[0043] The server 101 passes the credit card details to the paymentserver 103. If his credit card details are valid and are successfullyprocessed by the payment server 103 then the payment server 103 informsthe server 101 that his account can be activated. Once his account hasbeen activated by the server 101, the user can then authenticate himselfto the system 100 using his password and can begin to use the featuresprovided by the system 100.

[0044] Introductory Web Page

[0045]FIG. 2 shows a web page 200 which is initially seen by the userwhenever he uses his PC 102 to connect to the server 101. The web page200 has seven regions 201-207 which act as icons and allow the user toselect a particular aspect of the system 100.

[0046] In this embodiment, the system 100 provides a training system forice skaters and thus the regions 201-207 are customized accordingly. Theseven regions are: nutrition 201, competitions 202, fitness 203, icetraining 204, goals 205, injury 206 and updates 207.

[0047] The nutrition region 201 allows the user to enter informationconcerning his diet. The server 101 assesses the user's diet with regardto the user's activity level and injuries and provides an indication ofwhether the diet is meeting or exceeding the user's requirements. Thecompetitions region 202 reminds the user of forthcoming competitions andallows the user to enter information concerning competitions. Thefitness region 203 allows the user to enter information concerning hiscurrent fitness levels with regard to various indications of fitness.The ice region 204 allows the user to enter information concerning hisskill and training levels on ice. The goal setting region 205 allows theuser to enter “goals” that the user wishes to achieve. The injury region206 allows the user to enter information concerning injuries that theuser may inadvertently have sustained. The updates region 207 promptsthe user to enter more recent information should the informationconcerning, for example, his fitness become out of date.

[0048] Height, Weight and Detailed Fitness Information

[0049] Once the user's account is activated, the server 101 still needsto obtain further information from the user concerning: (i) basicphysical attributes such as the user's height and weight and (ii)detailed fitness information for the user.

[0050] The fitness region 203 displays a text caption that informs theuser that this information is required by the server 101. The user thenselects the fitness region 203. In response, the server 101 prompts theuser to enter the (i) basic physical attributes and (ii) detailedfitness information.

[0051] Firstly, the server 101 prompts the user to enter his height andweight in imperial units, i.e. feet and inches for height and stones andpounds for weight.

[0052] Secondly, the server 101 prompts the user to enter the followingdetailed fitness information: (i) the number of pushups that the usercan complete in 60 seconds (1 minute), (ii) number of situps in oneminute, (iii) vertical jump height, (iv) long jump distance, (v) sit andreach distance, (vi) time to run a distance of one mile (1,609 meters),and (vii) number of “shuttles”. The user needs to have performed theseven tests before he can enter the information. Of course, the userdoes not need to have performed the tests before creating an account;the user can create his account, perform the seven tests and then log into the server 101 at a later time and/or date in order to enter thedetailed fitness information.

[0053] Pushups and situps measure the core stability of the user. Thecore stability is a measure of the strength of the user's “core”muscles. The core muscles include the abdominal and lower back muscles(i.e. trunk and torso muscles). Core stability is one measure of thefitness of the user. Vertical jump height and long jump distance measurethe short-term “explosive” strength of the user. Sit and reach distancemeasures the flexibility of the lower back and hamstrings of the user.The one mile run time and the shuttles test both give an indication ofthe cardiovascular endurance of the user. As those skilled in the artwill appreciate, the “shuttles” test measures cardiovascular enduranceby requiring the user to complete a 20 m distance every time an audible“bleep” is sounded. Every 3 minutes, the rate of the bleeps increases.The test continues until the user can no longer complete the 20 mdistance between consecutive bleeps.

[0054] Updates

[0055] The server 101 also records the calendar date on which each ofnine categories of height, weight and fitness information is provided bythe user (i.e. seven for fitness together with height and weight). Thisallows the server 101 to prompt the user to enter more recentinformation when there is a risk that the current information might beout of date. The updates region 207 as shown at FIG. 2 indicates thatmore recent height and weight information is required. However, thefollowing example concerns the detailed fitness information.

[0056]FIG. 3 shows an example of a web page 300 as seen by the user. Theweb page 300 includes a region 301 that lists the seven categories ofdetailed fitness information. The height and weight categories are notshown by FIG. 3. As shown, the region 301 indicates that the updatedinformation regarding the user's sit and reach ability is required now(i.e. the region 301 displays “Now”), arid indicates that updatedinformation regarding the vertical jump and the long jump will berequired in 7 days' time (thus the region 301 displays “7 days” forthese two categories). Of course, the user's new sit and reach abilitymay actually be the same as his previous sit and reach ability.

[0057] For each of the nine categories, the server 101 stores the dateof the most recent information and compares this with the current date.The result of the comparison is used by the server 101 to give the useradvance warning of when more recent information will be required. If theresult of the comparison exceeds a predetermined threshold, i.e., if acategory of information is too old, then the server 101 prompts the userfor more recent information. In this embodiment, for each of the 9different categories, the server 101 has a respective threshold todetermine the maximum age of the measurement. For example, for thevertical jump and long jump strength categories, more recent informationis requested if the current information stored is more than 7 days outof date. For the one mile run and shuttle test cardiovascularcategories, more recent information is requested in the currentinformation is more than 33 and 36 days old, respectively. Thecardiovascular ability of most users will improve more slowly than theirstrength and thus less frequent updates are required for thecardiovascular categories. Note that although the user is prompted toenter more recent information when a category has exceeded itsrespective threshold, the user does not have to wait until a category isout of date but can enter more recent information at any time.

[0058] In this embodiment, not only can each of the nine categories havea respective threshold, but the threshold can be different for differentusers. For example, height (and weight) information is required morefrequently when the user is in his/her teens than when fully grown. Thusthe thresholds can be different not only for different users but canalso vary according to the age or fitness of the user.

[0059] Adolescents have growth spurts which provide both trainingopportunities and also present risks. During a growth spurt, the bonesgrow and the ligaments loosen. In this embodiment, height information isrequired of males at the following intervals: ages 8-11 every 4 weeks,ages 11-17 every 2 weeks, ages 17-21 every 4 weeks, and ages 21+ every 6months.

[0060] Height information is required of females at the followingintervals: ages 8-10 every 4 weeks, ages 10-14 every 2 weeks, ages 14-18every 4 weeks, and ages 18+ every 6 months.

[0061] Once the height, weight and fitness information has been providedto the server 101 by the user, the server 101 can use the information toassess the fitness of the user. This is discussed in more detail below.

[0062] Fitness Status Assessment

[0063] Once the server 101 has received the fitness information from theuser, the user can select a fitness status assessment. FIG. 4 shows anexample of a web page 400 illustrating a fitness status assessment 401.In this embodiment the fitness status assessment is a chart 401 thatshows the user's current fitness levels compared to those of his nominalpeers. As shown, for each of the seven categories of detailed fitnessinformation, a respective segment of the chart is displayed, the radialspacing from the ??? center indicating the user's fitness level comparedto that of his nominal peers. For each category, the user's fitness israted as either excellent, good, average or poor. For the user whosefitness level is shown at FIG. 4 has excellent fitness levels for milerun, sit and reach, long jump, vertical jump and pushups, and goodlevels for shuttles and situps. The color of the associated segment isselected on the basis of the fitness rating. The chart 401 provides auser with an easily interpretable fitness assessment.

[0064] Note that the user's fitness is compared to his nominal peers,not against other users of the system. When a user creates an account,he is required to enter information indicating the skill level at whichhe skates. For example, the user may indicate that he skates at a“county championship” skill level. The system compares the user'sheight, age and skating skill level with information stored in thedatabase 110 of the server 101.

[0065] In this embodiment, the stored information summarizes the fitnesslevels of skaters at various heights, ages and skill levels, asdetermined by measuring the fitness of real skaters. The server 101interpolates and extrapolates the stored information in order todetermine the fitness level expected of the user. Note that in analternative embodiment, the server 101 may store a mathematical formula,instead of stored information, in order to allow the user's height, ageand skill level to be related to the fitness level expected of him.

[0066] Once the server 101 has compared the user's actual fitness levelwith the fitness level expected of him, the fitness assessment resultsare displayed as the pie chart 401.

[0067] Goals—Setting

[0068] By selecting the goal setting region 205 of FIG. 2, the user canindicate to the server 101 that he wishes to enter, or review,information concerning his goals. In response, the server 102 causes aweb page to be displayed on the user's PC.

[0069]FIG. 5 shows an example web page 500 as seen the user. The webpage 500 includes sections relating to “outcome” goals 501, “long term”goals 502 and “dream” goals 503. Outcome goals 501 are relatively shortterm goals. Dream goals 503 represent the ultimate ambition of the user,for example to win a regional or a national competition.

[0070] The inventors of the present application have realized that for auser to successfully compete at his desired level, it is not sufficientfor the user to train only with regard to his physical fitness. Rather,to ensure that the user competes successfully, it is also necessary toensure that the user develops an appropriate mental attitude so thatunder the pressure of competition conditions he performs at the level hehas achieved during training.

[0071] The dream goal section 501 allows the user to specify what heregards as his dream goals. Depending on the ability of the ice skater,his dream goal might be winning a regional championship or winning anOlympic competition. In this embodiment the dream goal section does notprovide a selection of pre-prepared options but requires the user toconsider his ambitions and to express his ambitions in his own words.

[0072] Once the user has formulated his dream goal(s), the user can usethe long term goal section 502 to enter long term goals that willprovide a path to achieve his dream goal. For example, the user mightconsider that an important stepping-stone to achieving his dream goal isthat of winning a regional ice skating competition. Accordingly, theuser enters this into the long term goal section 502.

[0073] Finally, the user can use the outcome goal section 501 to entergoals that have definite outcomes. The outcome goals are intended to berelatively short term and thus the server 101 allows the user to entergoals for the next 3 months, the next 6 months and the next 12 months.Although a user can enter his goals in any order into the dream goalsection 503, long term goal section 502 and outcome goal section 501, itis intended that the user enter his goals in the above order so that hederives maximum benefit from this aspect of the system.

[0074]FIG. 6 shows a web page 600 that enables the user to set hisoutcome goals. The web page 600 is displayed when the user selects a“Details” button 510 on the web page 500. As shown, the web page 600allows the user to select outcome goals from a drop-down box 601. Theuser may enter up to three outcome goals for a 3 month period. Examplesof outcome goals are (i) finishing in the top ten rankings for an event,or (ii) beating a certain competitor at an event.

[0075] The user can also the web page 600 to enter the dates ofcompetitions. The dates entered of such competitions are stored by theserver 101 in the database 110. When a competition approaches (forexample is two weeks away) the server 101 “tapers” an exercise regimefor the user, thus ensuring that the user is in peak condition for thecompetition. The tapering is discussed in more detail further below.

[0076] The process of entering his outcome goals into the goal sections501-503 facilitates the user to become aware of how he can use outcomegoals to achieve his dream goal. Once the user has entered goals intothe goal sections 501-503, he will be ready to use a “factors” section504 and a physical strengths & weaknesses section 505 of the web page500. The factors section 504 and the physical strengths & weaknessessection 505 together form “process goals”. Process goals are welldefined; achievement of the process goals is intended to provide themeans by which the user will achieve his outcome, long term and dreamgoals.

[0077] The factors section 504 allows the user to enter what he regardsas key technical and mental factors. In this embodiment the system issuitable for an ice skater. Therefore, the factors section 504 offers arange of predetermined options that are suitable for the technicalfactors that affect an ice skater. As shown at the factors section 504,the user has selected the following technical factors: (i) clean edges,(ii) high jumps and (iii) centered spins. The user has also selected thefollowing mental factors: (i) maintaining concentration throughout theroutine, (ii) coping with mistakes and (iii) coping with the pressure.Note that only the first of these mental factors is shown at the factorssection 504.

[0078] The physical strengths & weaknesses section 505 allows the userto enter what he regards as key physical strengths and weaknesses thathe needs to develop. The physical strengths and weaknesses section 505allows the user to select from predetermined options. As shown at thephysical strengths and weaknesses section 505, the user has selectedcardiovascular and flexibility as his weaknesses. Note that the view ofthe physical strengths and weaknesses section 505 shown at FIG. 5 doesnot show any strengths.

[0079] Once the user has entered his strengths and weaknesses into thefactors section 504 and the physical strengths & weaknesses section 505,he can select an button 506 to display graphical representation of hisstrengths and weaknesses.

[0080] Goals—Graph

[0081]FIG. 7 shows an example web page 700 as seen by the user. In thisembodiment, the web page 700 includes a chart 701 that allows the userto readily interpret his strengths and weaknesses. The chart 701 hassegments corresponding to the following technical factors: (i) doubleflips, (ii) triple toe, (iii) clean edges, (iv) high jumps, (v) centeredspins; the following mental factors: (vi) maintaining:concentrationthroughout the routine, (vii) coping with mistakes, (viii) coping withthe pressure; and the following physical strengths and weaknesses: (ix)core stability, (x) jumping power, (xi) cardiovascular and (xii)flexibility. Note that although the pie chart 701 is shown as havingtwelve segments, the actual number of segments depends on the number oftechnical and mental factors and physical strengths and weaknessesentered into the web page 500.

[0082] Goals—Completion and History

[0083]FIG. 8 shows a goal completion web page 800, as seen by the user.The web page 800 is displayed at the user's PC 102 when the user selectsan appropriate icon (not shown) from the web page 500. The web page 800allows the user to review his goals and to indicate to the server 101when goals have been completed. Thus the system 100 provides a goalorientated method to facilitate the user to understand ways in which hecan improve his performance.

[0084] The web page 800 displays goals that have not been completed at aregion 801 and displays goals that have been completed at a region 802.A description of a goal that has been selected by the user is displayedat a region 803. Note that FIG. 8 does not actually show any goals.

[0085] A user can readily use the web page 800 to inform the server 101of the goals that have been completed. For example, if a goal has beencompleted then the user selects the goal and then selects a button 805which causes the server 101 to move the goal from an “incomplete”section of the database 110 to a “completed” section of the database110. The web page 800 is then updated. It will be recalled that theserver 101 implements a database 110. Goals that have not been completedare stored in a section of the database 110 allocated for incompletegoals. When the user has completed the goal, he uses the button 805 tocause the server 101 to update the database 110 and move the goal to thesection of the database 110 allocated for completed goals.

[0086]FIG. 9 shows a goal history web page 900. The web page 900 helpsthe user to keep track of his goals. A session date field 901 allows theuser to enter a session date, in this case Dec. 1, 2003. In response,the server 101 interrogates the database 110 for goals relevant to thesession date and causes an updated web page 900 to be displayed at theuser's PC 102. The updated web page 900 displays the relevant goals in adisplay field 902. Note that in FIG. 9, only a completed long term goalis shown in the display field 902. A goal category field 903 allows theuser to select a particular category of goals to be displayed in thedisplay field 902. As shown by FIG. 9, the user has selected long termgoals in the field 903 and thus only long term goals having relevantdates are displayed in the display field 902.

[0087] Activity Assessment

[0088] The fitness region 203 of the web page 200 allows the user tocause the server 101 to display an activity assessment web page 1000 onthe user's PC 102. FIG. 10 shows the activity assessment web page 1000as seen by the user. The activity assessment web page 1000 allows theuser to inform the server 101 of the physical activities that the userhas performed recently. In response, the server 101 calculates theenergy expenditure of the user and also calculates the suitability ofthe user's physical activities to the user's training program.

[0089] The activity assessment web page 1000 shows a field 1001 which,in this embodiment, displays the most recent seven days. (The server 101in this embodiment includes a real time clock so that the server 101always knows the current calendar date.) The field 1001 has sevenbuttons 1002 which the user can select to view and/or edit the physicalactivities for the respective day. The field 1001 also has seven statusindicators 1003 which inform the user when physical activity informationas been entered for the respective day. In this embodiment, the server101 requires information for at least five of the seven days. Thisensures that the information is representative of the previous sevendays. Note that if the user enters information for all seven days thenthe user's energy expenditure the suitability of the user's physicalactivities can be determined directly. On the other hand, if the userenters information for, for example, just five of the seven days thenthe information for the five days is multiplied by {fraction (7/5)}(1.4) in order to scale the information to a seven day period.

[0090] When the user selects one of the buttons 1002 the server 102causes a detailed activity assessment web page 1100 to be displayed onthe user's PC 102. FIG. 11 shows an example of a detailed activity entryweb page 1100, in this case for the date Jan. 6, 2004. The web page 1100includes two pull down menus 1101 that the user can use to select anactivity type. In FIG. 11, the activity type selected is “walking thedog”. The user then uses a “duration” pull down menu 1102 to indicate tothe server 101 the duration of the activity. In FIG. 11, the durationselected for the activity is one hour. Finally, the user uses a button1103 to add the activity to a list 1104. The list 1104 lists all theactivities entered for the particular day.

[0091] Energy Expenditure

[0092] On the basis of the activity information entered, the server 101calculates the energy expenditure for the day (i.e., for the 24 hourperiod of Jan. 6, 2004). The server 101 calculates the total energyexpenditure for the day by adding up the energy expenditure caused byall the separate activities of the day. For the day shown at FIG. 11,the user has entered the activities of “walking the dog” and “baseball.”For each of these activities, the server 101 consults the database 110and determines the energy expenditure on the basis of: (i) the type ofactivity (e.g., baseball), (ii) the duration of the activity (e.g., 1hour), and (iii) the height, weight, age and gender of the user.

[0093] For the remaining time of the day, in this case 22 hours, theserver 101 uses “Basal Metabolic Rate” to determine the energyexpenditure. As those skilled in the art will appreciate, there arevarious different formulae for calculating the basal metabolic rate ofan individual but the formulae generally relate the individual's height,weight, age and gender to the energy expenditure. For example, accordingto one formula, a 30 year old male who is 1.72 m tall and weighs 70 kgwill have a basal metabolic rate of 1680 kilo-calories for a 24 hourperiod (where each kilo-calorie is equivalent to 4184 joules of energy).Thus he will require 70 kilo-calories an hour if he is resting orasleep. For the example shown at FIG. 11, the user is deemed to beasleep or resting for 22 hours of the day and active, to differentdegrees, for the remaining two hours. When walking the dog, the userwill expend energy at a greater rate, 224 kCal per hour as shown at thelist 1105. Similarly, the user will expend 449 kCal per hour whenplaying baseball.

[0094] When the user has used the web page 1100 to enter his activitiesfor at least 5 of the most recent 7 days, the server 101 calculates hisaverage daily energy expenditure and displays this at a field 1201 aspart of an activity assessment overview web page 1200, shown at FIG. 12.The web page 1200 also includes a field 1204 which displays the averagedaily time that the user has spent sleeping, training for ice skatingand fitness (i.e., non-ice skating training).

[0095] The user may use a button 1203 to view a detailed assessment ofthe relevance of the past seven days' activities to his trainingrequirements, as shown at FIG. 13.

[0096] Detailed Activity Assessment

[0097]FIG. 13 shows a detailed activity assessment web page 1300, asseen by the user. The web page 1300 displays a field 1301 that providesthe user with a detailed analysis of the user's physical exercise duringthe preceding seven days.

[0098] As shown, in this embodiment the field 1301 displays detailedinformation for each of six training areas: (i) flexibility, (ii)cardiovascular, (iii) local muscular endurance, (iv) core stability, (v)lower body strength and upper body strength (vi). Local muscularendurance is the ability of a single muscle to perform sustained work.

[0099] Each of the training areas relates to a type of exercise that isimportant to ice skaters. The field 1301 shown at FIG. 13 displays“actual” and “target” percentages for each of the six training areasalthough note that, for the web page 1300, all of the actual percentageshappen to be 0%. The actual and target percentages are normalized to thetraining needs of the user, taking into account the skill level of theuser.

[0100] For example, in this embodiment the database 110 storespredetermined information indicating that a 30 year old male user, whoskates at an advanced level, should be performing 6 hours per week of“normalized” lower body strength exercises. The user can achieve the 6hours per week either by performing physical exercises such as squatthrusts that are almost 100% appropriate to lower body strength, orcould perform 12 hours per week of exercises such as baseball that is50% appropriate to lower body strength. Conversely, while squat thrustsare an excellent way of improving lower body strength, they do notappreciably develop other training areas such as flexibility. On theother hand, baseball provides better all-round training than squatthrusts.

[0101] Based on the activity data entered by the user to the web page1100 for each of the days, the server 101 uses the database 110 toassess how relevant the activities are to the training needs of, in thisembodiment, an ice skater. The database 110 stores predetermined datavalues which have been empirically found to give good results whentraining ice skaters. Here, it has been determined that a good trainingprogram for an ice skater should devote, for example, 10% of thetraining effort to flexibility, 15% to cardiovascular, 10% to localmuscle endurance, 25% to core stability, 35% to lower body strength and5% to upper body strength, as shown by the field 1301.

[0102] Note that in this embodiment the percentages displayed at thefield 1301 are normalized to the requirements of the user. Thus for auser who skates at an intermediate level, 3 hours of squat thrusts everyweek would achieve 100% of his target lower body strength physicalactivity. Conversely, a user who skates at an Olympic level would needto perform 6 hours of squat thrusts every week to achieve 100% of histarget lower body strength physical activity. Thus different physicalactivities are weighted for their relevance to the six training areasdisplayed at the field 1301. The weights are stored in the database 110.

[0103] As will be described later in more detail, the predeterminedinformation stored in the database 110 concerning the physical activityrequirements for the six training areas can be modified by the server101 before being used as the target percentages in the field 1301. Asthose skilled in the art will appreciate, sportsmen/sportswomentypically “taper off” their training regimes before a major competition.This is to reduce the risk of sustaining injuries through trainingbefore a competition and to allow the body to recover from the training.

[0104] Nutrition—Data Entry

[0105]FIG. 14 shows a diet web page 1400 which includes a field 1401.The diet web page 1400 is similar to the web page 1000 and allows theuser to enter information about the foods he has eaten during theprevious week. The system 101 requires the user to enter information forat least five of the preceding seven days in order to perform ameaningful assessment of the user's diet.

[0106] By selecting one of seven buttons 1402, the user can select oneof the preceding days.

[0107]FIG. 15 shows a web page 1500 that allows the user to enterdietary information for a particular day. As shown, the web page 1500 isfor the date of Jan. 6, 2004. The web page 1500 includes pull down menu1501 to allow the user to select a dietary group from: (i) bread andcereals, (ii) fast foods, (iii) dairy, (iv) drinks, (v) fats, oils andsugars, (vi) fruit and vegetables and (vii) protein.

[0108] A pull down menu 1502 allows the user to select a particularfoodstuff from the dietary group. Examples of foodstuffs are tuna fish,Caesar salad and bread pudding. A pull down menu 1503 allows the user toselect a portion size.

[0109] By using the pull down menus 1501-1503, the user can enter hisdietary intake for the preceding week. The database 110 storesinformation listing the nutritional values of the various foodstuffs.For example, 100 g (grams) of tuna fish may be listed as providing 23 gof protein, 0.2 g of carbohydrate, 13 g of unsaturated fat and 4 g ofsaturated fat.

[0110] Once the user has entered his dietary intake for the precedingweek, he can use a button 1403 of the web page 1400 to view anassessment of his diet regarding his needs. The server 101 usesinformation stored in the database 110, in conjunction with theinformation provided by the user regarding both the types and quantityof food and drinks he has consumed, to determine how much protein,carbohydrate and fat he has obtained from his diet.

[0111] When a user has entered data for a week, this data is stored inthe database 110 for later retrieval. Usually, the user will enterinformation every week concerning his food intake for the previous week.The data stored in the database 110 avoids the user having to enter thedata from scratch each week. Instead, the user can cause the server 101to retrieve the data from the database 110 and display the data at a webpage (not shown) at the user's PC 102. The user then indicates thechanges compared to his diet for the previous week. This featureprovides the advantage that the user can more readily enter his foodintake. For example, if the user eats the same foodstuffs each week thenhe will not need to enter any information but will merely need to informthe server 101 that his diet was the same as the previous week.

[0112] Once the server 101 has determined the user's food intake, thiscan be displayed at a web page 1600.

[0113] Nutrition—Assessment

[0114]FIG. 16 shows a nutrition assessment web page 1600 which displaysat a field 1601 the daily energy requirement of the user as calculatedon the basis of the information provided by the user at web pages 1000and 1100. The field 1601 displays the same numerical value for theuser's daily energy requirement as was calculated by the server 101 fordisplay at the field 1201 of web page 1200.

[0115] A field 1602 of the calorific assessment web page 1600 displaysan analysis of the calorific value of the foodstuffs and drinks that theuser has consumed during the seven previous days. The analysis isperformed by the server 101 on the basis of the dietary informationentered by the user at web pages 1400 and 1500. In this embodiment, theserver 101 analyses the calories provided by the user's diet in fourcategories: (i) protein, (ii) saturated fat, (iii) unsaturated fat and(iv) saturated fat. For example, if the various parts of the user's diettogether contain 100 g of protein each day then he will receive 350 kCaleach day from protein alone. As shown at FIG. 16, here the field 1602indicates that the user is obtaining an average of 448 kCal a day fromprotein, 515 kCal a day from carbohydrates, 231 kCal a day fromunsaturated fat and 57 kCal a day from saturated fat.

[0116] The field 1602 also provides an indication to the user of thesuitability of his dietary food and drink intake. As shown at FIG. 16,here the field 1602 indicates that the user's is obtaining the correctamount of calories from his protein intake, but is receiving too manycalories from his unsaturated fat intake. The suitability of the user'scalorific intake in the four categories listed above is determined bythe server 101. The server 101 analyses the user's food intake for theprevious seven days and compares this with a profile that is stored inthe database 110. Depending on the results of the comparison, the server101 causes the field 1602 at the user's PC to display whether the useris obtaining the correct number of calories from the four categories ofhis diet.

[0117] The server 101 calculates the user's energy requirement bycomparing the user's calorific intake with the user's calorificexpenditure displayed at the field 1201. In this embodiment, if theuser's energy intake is within 10% of his energy expenditure then “OK”is displayed at the field 1602, to indicate to the user that his energyintake is satisfactory. If his energy intake is less than 90% or morethan 110% of his energy expenditure then the field 1602 displays “toolow” or “too high”, respectively. If his energy intake is less than 70%of more than 130% of his energy expenditure then the field 1602 displays“far too low” or “far too high”, respectively.

[0118] In this embodiment, the server 101 calculates the number ofcalories that the user should be receiving from saturated fats and fromunsaturated fats, as a percentage of his energy expenditure. There is nolower limit for saturated fats. For saturated fats, “too high” is set at10%, and “far too high” is set at 15% of the user's energy intake. Forsaturated fats, the lower limits are 15% and 17% and the upper limits22% and 25%.

[0119] In this embodiment the server 101 calculates the user's proteinrequirements and carbohydrate requirements on the basis of the user'sweight in kilograms (kg). If the user consumes less than 1.20 g ofprotein per kg of his bodyweight then the field 1602 indicates “toolittle”. Thus a 70 kg user should consume a total of between 84 g and105 g of protein a day, for example by eating 411 g of tuna fish (whichcontains 24 g of protein per 100 g) each day. If he consumes less than0.70 g per kg per day, the field 1602 will display “far too little”. Theupper limits for protein are 1.50 g and 2.00 g for “too much” and “fartoo much”, respectively. For carbohydrates, the lower limits are 2.00 gand 4.00 g and the upper limits are 7.00 g and 10.00 g.

[0120] The upper and lower limits for protein, carbohydrate, unsaturatedfat and saturated fat are stored as predetermined values in the database110. Each time that the web page 1600 is displayed, the server 101retrieves the predetermined values and calculates, on the basis of theuser's physical activities, his dietary intake and his weight, whetherhe has been consuming the correct amounts and correct proportions of thevarious food categories.

[0121] Nutrition—Dietary Assessment

[0122]FIG. 17 shows a web page 1700 that the user can select for displayif the field 1602 indicates that he has not been eating appropriatefoods. The web page 1700 includes a protein field 1701, a carbohydratefield 1702, a fat field 1703, a fluids field 1704 and a fruit andvegetables field 1705.

[0123] The protein, carbohydrates and fat fields 1701-1703 show both theuser's actual consumption 1701 a, 1702 a, 1703 a for the respective foodcategory and the user's target consumption 1701 b, 1702 b, 1703 b forthe food category. If the user needs to change his daily food intakethen the fields 1701-1703 also indicate to him how large a change heneeds to make.

[0124] The web page 1700 also includes a field 1704 that providesinformation regarding the user's fluid intake, and a field 1705 thatprovides information regarding the user's fruit and vegetableconsumption. For the field 1704, the server 101 determines whether theuser has been consuming sufficient quantities of fluids (i.e., water).If the user's daily intake of water is outside the range 31 (liters) to51, then the field 1704 indicates that user needs to drink more or lesswater. For the field 1705, the server 101 calculates the user's intakeof fruit and vegetable based on the user's dietary intake as entered atweb page 1500. For example, Caesar salad would count towards the user'sfruit and vegetable intake whereas tuna fish would not be regarded bythe server 101 as forming part of the user's required fruit andvegetable intake. The server 101 consults the database 110 to assess therelevance of the foods towards the fruit and vegetable intake. Forexample, in this embodiment the database 110 stores predeterminedinformation indicating that 100 g of Caesar salad counts as 50 g towardsthe user's fruit and vegetable intake quota.

[0125] Training Schedule—Coarse

[0126]FIG. 18 shows a web page 1800,as seen by the user, that the usercan use to generate a personalized training schedule. The web page 1800allows the user to indicate, at a coarse level, the time slots that hewill have available for training during the following seven days. Here,the web page 1800 represents dates ranging from “tomorrow” (Jan. 7,2004) through to Jan. 13, 2004. The web page 1800 includes a field 1801that the user can use to indicate his availability for morning trainingsessions, both for skating training and fitness training. A field 1802allows the user to indicate his availability for afternoon skating andfitness training sessions. As shown at FIG. 18, here the user hasindicated that he can perform ice skating training on the mornings ofJan. 7, 2004 and Jan. 11, 2004, and in the afternoons of Jan. 9, 2004and Jan. 13, 2004. Although the web page 1800 shown at FIG. 18 does notindicate that the user will be performing any fitness training duringthe week, it is expected that in normal use of the system 100 he wouldperform a mixture of both ice skating training and fitness training.

[0127] Once the user has indicated his availability, he can click abutton 1803 on the web page 1800. This causes the server 101 to interactwith the database 110 to suggest a proposed training schedule for reviewby the user.

[0128] The proposed training schedule is devised by the server 101taking into account the user's fitness and his weaknesses. Although atFIG. 4 seven different measures of the user's fitness are shown, in thisembodiment the server 101 lumps these into four categories: (i)flexibility, (ii) cardiovascular, (iii) strength and (iv) corestability. In this embodiment, flexibility is determined solely on thebasis of the user's sit and reach capability. Cardiovascular isdetermined on the basis of the user's one mile run time and shuttlesability; in this embodiment the one mile run time and the shuttlesability are given equal weighting. Strength is determined on the basisof the user's long jump distance and high jump height. Core stability isdetermined on the basis of the user's situps score and pushups score. Inthis embodiment, the factors making up the strength and core stabilitycategories are also given equal weighting.

[0129] For example, referring to FIG. 4, the user has scores of 100%except for pushups which is 58%, situps 68% and shuttles 72%. Thus inthe core stability category, the user has a score of (68%+58%)/2=63%. Inthe cardiovascular category, the use has a score of(100%+72%)/200=86%.Thus of all the four categories, the user's core stability score is hisweakest, while his cardiovascular is his second weakest as he has 100%in the other categories (strength and flexibility).

[0130] Thus for this user, the server 101 proposes a training schedulethat concentrates primarily on improving the user's core stabilityscore. The server 101 also attempts, with secondary importance, todevelop the user's cardiovascular score.

[0131] Although for the web page 1800 at FIG. 18 the user had notselected any fitness training sessions, suppose that the user hadselected four fitness training sessions. The server 101 allocates themajority of the training sessions to the primary weakness, in this casecore stability, and the remaining training sessions (if any) to thesecondary weakness, in this case cardiovascular. Here the user canattend four training sessions and therefore three of these are devotedto situps with the remaining session being devoted to cardiovascularexercises. If the user had selected three or fewer training sessionsthen they would all be devoted to core stability. On the other hand, ifthe user had selected five or more training sessions then the server 101would devote one of the five training sessions to a tertiary weakness.

[0132] Once the server 101 has determined what type(s) of training arerequired for the training schedule, the server 101 then determines theintensity of training required.

[0133] In the case of core stability, the intensity is determined on thebasis of the user's pushups and situps score. For example, here the useris capable of performing 45 pushups in one minute and 30 situps in oneminute. The server 101 determines the total number of pushups and situpsthat the user should perform during a training slot by multiplying theuser's pushups and situps scores by 1.6, to arrive at 72 and 48,respectively. (Note that as is discussed further below, the multipliermay be reduced from 1.6 to 1.0 during the week immediately before acompetition.) The server 101 then separates the total number into groupsthat will be performed by the user at different times within a trainingslot. The reason that the total number is split up is to ensure that theuser is overloaded during the training but without becoming excessivelyoverloaded. Here, the user's pushups and situps scores are at the limitof the user's capability and therefore he would not be able to complete72 pushups (or 48 situps) in one go. Distributing the total number atdifferent parts of the training session ensures that the user derivesmaximum training benefit.

[0134] In the case of cardiovascular, the intensity is determined on thebasis of the user's deemed maximum achievable heart rate. In thisembodiment, the user's maximum achievable heart rate is estimated bysubtracting the user's age from 220. Thus a 20 year old user would bedeemed to be capable of achieving a heart rate of 200 beats per minuteat maximum exertion. To improve the user's cardiovascular score, he isrequired to perform an activity such as swimming, running, cycling orskating such that his heart rate is maintained at a specified proportionof his maximum achievable heart rate. The specified proportion willdepend on the user's fitness level. In this embodiment, a relativelyunfit user will be required to increase his heart rate to 55% of hismaximum achievable heart rate. On the other hand, an athlete of highfitness would be required to maintain his heart rate at 85% of hismaximum achievable score.

[0135] Training Schedule—Fine

[0136] Once the server 101 has determined a proposed training schedulefor the user, the server 101 causes the user's PC 102 to display a webpage 1900, as shown at FIG. 19. The web page 1900 allows the user toreview the proposed training schedule and refine the proposed trainingschedule until it fits in with his diary. Thus there is a two stageprocedure by which the user interactively causes the server 101 togenerate a training program that is tailored to the user. Firstly, theuser uses the web page 1800 to inform the server 101 at a coarse levelof the training that he can perform during the following week. Secondly,the user uses the web page 1900 to refine the proposed training programso that it fits in with his other activities (such as leisure and work)during the following week. An advantage of this two stage procedure isthat the proposed training schedule will meet the basic requirements ofthe user. By contrast, a single stage procedure would run the risk ofproviding a poor user interface as the proposed training schedule wouldnot take into account the user's other activities during the week (andwould then require the user to extensively edit the proposed trainingschedule, for example by editing and moving a proposed a training slotfrom a day originally proposed to different day that does not clash withsay, work).

[0137] The web page 1900 includes a field 1901 that represents each ofthe 24 hours of each of the following seven days. FIG. 19 shows days inthe range Jan. 8, 2004 to Jan. 14, 2004. Each hour is divided into 15minutes intervals. The field 1901 uses color coding to represent thetypes of activity allocated to the field 1901. A field 1902 provides akey to the user and explains the color codes. The field 1902 shows thecolors that are used for the following activities: (i) nutrition, (ii)on-ice training, (iii) fitness, (iv) competition, (v) leisure, (vi)work, (vii) fitness test, (viii).“other” and (ix) sleep.

[0138] The web page 1900 provides a graphical user interface that allowsthe user to inform the server 101 of the detailed timings of his weeklyschedule. For example, suppose the proposed training schedule specifiesa training slot of one hour on Jan. 11, 2004 from 6 am to 7 am. In thisexample the server 101 knows, from the information entered by the userat web page 1800, that the user will be able to train on Jan. 11, 2004.However, the server 101 does not know the exact time that the user isavailable for training.

[0139] The user uses a field 1903 to inform the server that he canactually perform the training between 7.45 am and 8.45 am on thatparticular day (see FIG. 19). The server 101 stores the actual times(that the user will be available for training) in the database 110. Thisallows the user to consult the database 110 via the server 101 at anytime and review or check his schedule.

[0140] If the user has entered the times and dates of forthcomingcompetitions using the competitions region 202 of the web page 200 then,if any competitions are due to occur during the next seven days, thecompetition(s) are displayed in the appropriate time slots of the field1901. As was mentioned earlier, the server 101 can “taper off” theintensity of training in the run up to a competition, in order tominimize the risk of injury to the user before the competition.

[0141] Injuries

[0142] In case the user sustains an injury, the system 101 allows theuser to enter information regarding the injury (or injuries). FIG. 20shows a web page 2000 that allows the user to enter injury information.The web page 2000 includes an icon 2001 that represents the front of thebody (a button 2002 allows the user to select the back of the body incase the injury is at the rear of the user). The user selects the icon2001 to cause a web page 2100 to be displayed.

[0143]FIG. 21 shows the web page 2100. The web page 2100 allows the userto enter detailed information concerning the location of an injury andthe severity of an injury. An icon 2101 allows the user to select aregion of the body. Fields 2102 and 2103 allow the user to specify theexact locations and severity of injuries, respectively. A field 2104allows the user to specify the date of the injury. The server 101 thenstores this information in the database 110.

[0144] The field 2103 allows the user to select one of severalpredetermined categories of severity, for example mild (i.e., pain isnot intense and ceases immediately when physical activity ceases) orsevere (pain occurs immediately upon any activity using the injured areaand remain for 12-24 hours after the activity ceases).

[0145] If the user has any injuries that are more serious than “mild”then the server 101 prohibits all training when proposing a trainingschedule for the user at web pages 1800 and 1900.

[0146] A benefit of storing the injury information in the database 110is that the database 110 can be interrogated to determined the injuryhistory of the user. For example, by maintaining the injury profile overthe course of several years, patterns in the injuries sustained can bediscerned. Some users may have technique deficiencies or muscularimbalance, resulting in an excess of injuries on one side of the body.

[0147] Coach

[0148] The system allows coaches to be associated with users. As far asthe system is concerned, a coach is similar to a user in that he alsohas a user coach also has an account and a password for accessing thesystem.

[0149] A difference between a coach and a user is that the coachmonitors the performance of his trainees. As the database 110 storesinformation associated with each user, the coach can use the server 101to interrogate the database 110, and thus can monitor the progress ofhis trainees.

[0150] Before a coach can access information concerning a user, thatuser must first inform the server 101 that the particular coach isauthorized to view his performance information. This security featureprevents coaches from monitoring users that they are not training (e.g.competing users).

[0151] Database Structure

[0152]FIGS. 22a, 22 b, 22 c and 22 d when assembled as shown in FIG. 22show a block diagram 2200 of some of the major structures within thedatabase 110. In this embodiment, the data that comprises the database110 is stored on a hard disk drive (not shown).

[0153] As can be seen, in this embodiment the database 110 is arelational database having tables. Each table comprises one or morerecords. Each record comprises one or more fields. At least one databasekey is associated with each table. All tables are indexed by a primarykey. The primary key allows the records of a particular table to beuniquely specified for read or write accesses. In some tables, one ormore of the fields will be a foreign key. When a table contains foreignkeys, that table can index records stored in a related table.

[0154] A table 2201 stores basic information concerning a user. The useris uniquely identified by a key “user_id” which allows users havingidentical names to be distinguished. This table also stores the date ofbirth of the user, his/her gender, residence address and email address.The user_id is the primary key of many of the tables that make up thedatabase 110.

[0155] The system uses passwords to allows users to authenticatethemselves to the system. A table 2202 stores each user's password.

[0156] A table 2203 relates each user, by his user_id, to his respectivecoach (if any). Although it is not essential that a user has a coach, itis expected that many users would have a coach to train them. Each coachhas a coach_id which uniquely identifies that coach, even if severalcoaches have the same name. To ensure that only the intended coach isable to view the user's profile, each coach is allocated a “pin_number”.When a user and coach meet, for example during a coaching session, thecoach communicates his pin_number to the user. The user can then enterthe coach_id of his coach into the system 100, which stores thepin_number in the table 2204.

[0157] A table 2205 stores basic information concerning a user such asthe user's height and weight.

[0158] A table 2206 stores financial information for the user, forexample a transaction_id to identify a particular credit cardtransaction. A table 2207 stores information concerning the user'saccount, for example the date of activation of the account and the dateof expiry of the account.

[0159] A table 2208 stores, for a variety of different data, the datethat an update for the data is next required. In this embodiment thetable 2208 stores the update dates of core stability, strength, growth,a mood profile of the user, goals for setting by the user (see table2211), and the user's height and weight. Each time that the user entersdata for these data types, the server 101 calculates the due date of thenext update. For example, if an 14 year old male user entered heightinformation on Jan. 14, 2004 then the due date for updating his heightand weight information would be Jan. 14, 4004 plus 2 weeks, i.e. Jan.28, 2004. The value of Jan. 28, 2004 would be stored in the table 2208for his height and weight information. Whenever the user logs on to theserver 101, the server 101 compares the actual calendar date to thedates specified by the table 2208 for updates and, if an update isrequired, informs the user. The use of the table 2208 increases theperformance of the system 100. This is because the server 101 only needsto check the dates in the table 2208 against the calendar date.

[0160] By contrast, if, in an alternative embodiment, the system did notuse the table 2208, it would be necessary, each time the user logged onto the server 101, for the server 101 to interrogate a variety of tablesof the database (i.e., each table where information such as corestability was stored) as rather than storing the update dates centrallyin a table 2208, the update dates would be scattered amongst a varietyof tables of the database 110. Such an embodiment would require moreprocessing time to access the various tables, due to the need for theserver 101 to traverse the database hierarchy. In some situations, theincreased processing time would lead to unacceptable delays while theuser waited for the server 101 to interrogate the various tables of thedatabase 110.

[0161] A table 2209 associates the user_id, a “goal_session_id”, acreation date for the session and a flag to indicate whether or not thecoach (if any) is allowed to view the data associated with a particulargoal_session id. The use of a goal_session_id allows the process wherebya user enters his dream, outcome and process goals (see web pages500-900) to be broken down into separate steps if the user prefers.Typically, it will take about 20 minutes for a user to analyze his goalsin conjunction with the web pages shown at web pages 500-900. Withoutthe use of the goal_session_id, the user would have to complete the goalentering process in a single session. (If the user did not complete thesession, he would have to enter all of the data all over again in alater session).

[0162] The use of a goal_session_id allows the user to enter a portionof the required data. The data entered is then stored in the database110 and is associated with the goal_session_id. When the user is readyto enter more of the required data, the data previously entered isretrieved from the database 110 and is used to continue the goal settingprocess.

[0163] A table 2210 stores the data entered during a particular sessionand associates the data with a goal_session_id.

[0164] A table 2211 stores the results of user's goal assessments. Thetable 2211 stores a “psych_perf_id” which is used to relate table 2211to a table 2212. The table 2211 stores information including the user'sassessment of his own abilities, the coach's assessment of the user'sabilities, and text entered by the user as part of his assessment of hisabilities. The inventors of the present application have realized that asignificant problem during sports training can be when the user and thecoach have different assessments of the user's abilities. The fact thatthe table 2211 stores both the user's self assessment and the coach'sassessment allows these two assessments to be compared fordiscrepancies.

[0165] The table 2212 stores information regarding the user's short termgoals. The table 2212 not only stores specific goals but also allows theuser to enter when a specific goal has been completed. In addition, thetable 2212 includes a field specifying a review period for the shortterm goals. This ensures that the user will be prompted to periodicallyreview his short term goals. An example of a short term goal for a useris that of ensuring that he maintains “clean heels” during an iceskating maneuver.

[0166] A table 2213 associates user_ids with “competition_id”s. Acompetition_id is an identifier for various competitions. Thecompetition_id is used as a key for an event table 2214. Each event inthe event table 2214 is identified by its name, start and end dates andregion. The competition_id key is a composite key and comprises aplurality of the fields of the various records in the table 2214. Thisallows, for example, annual competitions held on different years to bedistinguished on the basis of their dates.

[0167] A table 2215 stores an analysis of the user's abilities. Thetable 2215 stores the results of an analysis that compares the userfitness rating with his goals. In effect, the table 2215 acts as a cacheto store the results of the analysis.

[0168] A table 2216 stores the dietary history of the user(s). For eachuser, the table 2216 records the type of food and drink that the userconsumed, the number of portions, which meal the food was eaten for andthe date that the food was eaten. The table 2216 includes a field“food_type_id” which is used as a key for another table, table 2217.Table 2217 is itself a database of a variety of foods and drinks, andassociates the nutritional breakdown of each type of food with therespective food_type_id of the foods.

[0169] A table 2218 stores data for custom foodstuffs that are not bydefault included in the database 110. When a user eats a type of food ordrink that is not included in the food table 2217, he has the choice of(i) entering nutritional data for the food as a one-off or (ii) creatinga new type of food category and entering the nutritional data for thatfood. The table 2218 has two keys, the user_id and “custom_food_id”. Thecustom_food_id has the same function as the food_type_id of table 2217but is personal to the user. Thus any user can select a foodstuff in thedefault food table 2217; on the other hand, a user can only enter customfoodstuffs that he has entered. As the data entered for a customfoodstuff is entered by the user, the authenticity of such data cannotbe regarded as high as that for the foodstuff in the table 2217.Ensuring that a user can only select the custom foodstuffs that he hashimself entered prevents one user from entering a foodstuff that hasbeen incorrectly entered by another user. The table 2218 allows usersto, in effect, set up a cache for food items that they frequentlyconsume but that are not in the table 2217. Tables 2217 and 2218 storeinformation for foodstuffs such as their sugar content, protein content,portion size, calcium content and type of food category.

[0170] A table 2219 uses “injury_id” as a unique identifier for eachinjury that any user sustains. The table 2219 also stores the user_idtogether with details on which side of the body the injury occurred andthe number of injuries that have been sustained on that side. The table2219 also stores a foreign key “injury_status_id” to a table 2220 and aforeign key “injury_kb_id” to table 2221. Table 2220 records the statusof an injury and associates this with the injury_id and a rating of theseverity of the injury. Table 2221 stores a knowledge base that may beconsulted by the user to obtain detailed information about an injury.Table 2221 includes information about the location of an injury, thetype of injury and advice concerning the various types of injuries.

[0171] A table 2222 stores the activity schedule displayed by web page1900. The table key for table 2222 is “schedule_id” which is used todistinguish the various schedules that will be generated by the system100. The table 2222 associates the schedule_id with the user_id and alsoincludes information regarding the dates of activities, the start andend times, the type of activity that is to be performed during atraining slot and the energy that is predicted to be expended by theuser during a training slot if he trains to the specified intensity andfor the specified duration.

[0172] A table 2223 stores the preliminary schedules entered into webpage 1800. The key for this table is “schedule_session_id” whichassociates the date of a particular session, whether the user will beperforming morning and/or afternoon on-ice training and whether the userwill be performing morning and/or afternoon fitness training.

[0173] A table 2224 relates the various user_ids to a“skating_level_id”. There are various skating_level_ids which relate aspecific ice skating skill level. A table 2225 relates the variousskating_level_ids to a description of what is expected of the user ateach skating_level_id. When the user creates an account, he reads thedescriptions provided in table 2225 so that he can choose askating_level_id that is appropriate to his skill level.

[0174] A table 2226 is concerned with the activity assessment for auser. The fields of the table 2226 include the duration of an activity,an “activity_id”, the date of the activity, the start time of theactivity and the user_id. The key for table 2226 is a combination of thedate, start time and user_id. The activity assessment table 2226 recordsthe actual activity of the user as opposed to the intended activitystored in table 2222. The activity_id is used as a key for a table 2227and a table 2228.

[0175] Table 2227 is keyed by activity_id and associates the variousactivity_ids with descriptions of the activity. Table 2228 is also keyedby activity_id and provides a predetermined breakdown of an activity forvarious physical categories. In this embodiment, the key activity_idindexes records that contain six fields. The six fields arecardiovascular, core strength, upper body strength, lower body strength,flexibility and local muscular endurance.

[0176] An activity analysis table 2229 contains a breakdown of a user'sphysical activity. For each user_id, the table 2229 records the dates ofexercise and the contributions of the exercise to the user'srequirements. Here, the table 2229 records the contribution of aphysical activity in the cardiovascular, core strength, upper bodystrength, lower body strength, flexibility and local muscular endurancecategories. The table 2229 also records the user's energy expenditure oneach date that resulted from the physical activity.

[0177] A table 2230 records the scores of users' fitness assessments.The key for table 2230 is “fitness_assessment_score_id” which uniquelyidentifies each fitness assessment. Other fields in the table 2230 arethe user_id; the test score(s) of the user for shuttles, the sit andreach test etc; the percentage rating of the user's scores compared tohis expected rating; and a record of the date when his fitness score waslast updated.

[0178] A table 2231 is used to relate users' shuttle test scores totheir bodies' mlO₂/kg capability, where mlO₂/kg is a measure of theusers' ability to transport oxygen, measured in ml of O₂, around hisbody per kg of body weight. Given the level at which a user completedthe shuttle test (i.e. the period between successive “bleeps”) and thenumber of shuttles completed at the final level, a formula is used tocalculate the expected mlO2/kg rating of the user. In this embodimentthe formula has been developed by Loughborough University of GreatBritain and has been found to give a good indication of the user'smlO₂/kg score.

[0179] A table 2232 is used to relate the fitness assessment scores of auser to target values for each of the categories of measurement. In thisembodiment the table 2232 has target values that would be expected of anelite skater for each of the categories in the fitness assessment test(shuttles, 1 mile run, sit and reach etc.). Table 2232 has expectedscores for both males and females of ages 8-60. Thus the expectedfitness assessment scores of, for example, a 23 year old female iceskater are determined by looking up the most appropriate fitnessassessment scores from the table 22322. Note that the table 2232 alsoincludes the mlO₂/kg expected of a user, again indexed by age andgender. Although the fitness tests do not directly measure the mlO₂/kgability of a user, this can be inferred as was explained for table 2231above and so is included in the table 2232.

Description of a Second Embodiment

[0180] At FIG. 23 there can be seen a server 10 with accompanyingcomputer terminal 11. The server 10 is connected via a telecommunicationnetwork, e.g. the Internet, to remotely located personal computers 12,13, and 14. In the example given the server 10 has a website which canbe accessed via the Internet and users of the system use web-browsersoftware on the personal computers 12, 13 and 14 to access the websitehosted by the server 10.

[0181] On the server 10 there is maintained a database which for each ofthe plurality of sports maintains a record of an idealized physiologicalprofile for the sport.

[0182] To obtain a meaningful physiological profile the secondembodiment can use items such as:

[0183] Maximum capacity to transport oxygen to tissues(VO_(2max)),

[0184] % of VO_(2max) that may be maintained without accumulation oflactate (OBLA),

[0185] Maximum strength measured as the greatest weight that can belifted just once (1-RM),

[0186] Maximum power measured as the work output in a unit of time (POW)

[0187] Core strength measured as the maximum number of sit-ups (COR1),push-ups(COR2) and crunchies (COR3) that can be performed without rest.

[0188] Local muscular endurance (LME).

[0189] As an example, an elite marathon runner is likely to haverelatively high VO_(2max), very high OBLA, low 1-RM, low POW, low COR1,low COR2, low COR3 and low LME when compared to a gymnast, or a figureskater.

[0190] Similarly, the marathon runner will have a differentpsychological, nutritional and injury profile from the gymnast or anoverweight person due to the dissimilar demands of the respective sportsand goals.

[0191] In the system, the stored idealized physiological profile for asport is used to determine where the weakness in a particular athletelies, and an ongoing training and assessment schedule is generated.

[0192] When a sports person first accesses the website hosted by theserver 10 he/she is asked to supply the following information(hypothetical figures are given as illustrations): Variable AthleteGender Male Age 24 Height (m)  1.76 Resting Heart rate (bpm) 34 Weight(kg) 76 Sport Long distance runner (10 km+)

[0193] The server 10 then retrieves from the database the idealizedphysiological profile for the sport selected by the sports person, inthis case long distance running. The retrieved measurements of theidealized profile are then scaled having regard to the body weight ofthe sports person, the gender and age. The resulting figures for thesehypothetical examples are given in the table below. Variable IdealizedMeasurements VO_(2max) (mlO₂/kg) 80 OBLA (% VO_(2max)) 65 1-RM (kg) 385Aerobic Power (W/kg) 28 Core strength 100 LME (mmol/l) 2.25

[0194] The sports person is prompted by a visual display on the localpersonal computer to input measurements of his/her Vo_(2max), OBLA,1-RM, POW, COR1, COR2, COR3 and LME. The server 10 then calculates fromthe input POW and weight information an aerobic power figure and fromthe input COR1, COR2 and COR3 figures a core strength figure. Then theserver 10 makes a comparison between the current physiological profileof the sports person and the idealized physiological profile for theselected sport (normalized by weight, age and gender) as illustrated bythe table below. Optimum Actual Variable value Value % differenceVO_(2max) (ml/kg) 80 60 75 OBLA 65 60 92 Aerobic Power (W/kg) 26 21.783.5 1-RM squat 85 kg 75 88 Core strength 100 95 95 LME 2.25 2.30 102.2

[0195] From the comparison the system can establish that the mostimportant area to improve for this particular athlete is VO_(2max.) Thesystem would now recommend a training regime to maximize the keycomponent.

[0196] Optimizing the VO_(2max) can be achieved by establishing atraining regime that has a high volume and relatively low intensity. Forrunning, the scheme follows that shown below (which would be relayed tothe sports person as information displayed on the video display unit ofhis/her personal computer and printed locally by the sports person).Factor (component) Lower Value Upper Value Sessions/week (volume) 3 4Distance % of competition (volume) 150 180 Intensity % of maximal heartreserve 65 75 (intensity)

[0197] The volume of training is evaluated as shown:

Volume_(run)=Sessions*Distance, where

Sessions=number of sessions per week and distance=distance run in eachsession.

[0198] In the hypothetical example, the athlete is recommended tocomplete 3 training sessions with distance=150% of competition distance(i.e., 15 km). There should be 2 days rest between training.

[0199] The intensity is evaluated as a percentage of Maximum output fromfollowing the Karvonen formula:

THR=HR _(rest) +INT*(HR _(max) −HR _(rest)), where

THR=training heart rate

INT=Intensity percentage/100 (e.g. 80%=0.8)

HR_(rest)=Resting heart rate and

HR _(max)=Maximal heart rate (this is either available from a maximaltest or can be estimated from 220−age (years))

For our athlete, the THR=34+0.70*((220−24)−34)=163 beats/minute

[0200] The actual training run can be done within a band of 5beats/minute either side of THR (at this level of athlete, one wouldexpect that a heart rate monitor is used).

[0201] In a variation of the system the sports person is assessed forsymptoms of overtraining, and research has shown that psychologicalassessment tools such as a Profile of Mood States (POMS) can be used toindicate risk of overtraining.

[0202] Mood data for the sports person are obtained by appropriatequestions relayed via the local personal computer. Categories areestablished as shown in the table below. The base value represents theaverage value from all of the data obtained during the off-season. Fordetails of the specific method for eliciting data from a profile of moodstates questionnaire see Terry et al. (1999). Last session Mooddimension Base Value value Anger 4 6 Tension 5 8 Vigor 9 4 Depression 15 Fatigue 2 7 Total 21 30

[0203] The system compares current POMS scores to historical base values(obtained during an off-season). Two tests are used:

[0204] Test 1: is the current total POMS score more than 50% abovereference values? In our case, 21+50%=31.5 indicating that it is not.

[0205] Test 2: Is the current measure of Fatigue higher than currentmeasure for Vigor? In our case this is true.

[0206] The overtraining risk is used to modify the proposed trainingschedule by reducing the recommended training volumes and trainingintensities by the percentage figures below (overtraining risk is 0% ifthe answers to both of the above questions are “no”, 50% if one answeris “yes” and one is “no” and 100% if both answers are “yes”).Overtraining Training Training Risk % Volume Intensity 0 0 0 50 15 20100 60 50

Alternative Embodiments

[0207] The training systems have been described above in terms of asingle user. In alternative embodiments the systems may be used for aplurality of different users. In this case, each user is allocated arespective user_id when he/she creates an account with the server 101.

[0208] The training systems described in the first embodiment abovecomprised a server 101 which communicated with a PC 102. In alternativeembodiments the server 101 may be connected to a plurality of PCs 102.The server 101 may either be connected to any one of a number ofdifferent PCs 102 or may be simultaneously connected to a plurality ofseparate PCs 102. In embodiments where the server 101 is simultaneouslyconnected to different PCs 102 it is anticipated that each PC 102 wouldbe used by a respective user of the system 100.

[0209] The training system uses a PC 102 to provide a graphical userinterface to a Java program which controlled the server 101. The PC 102was caused to display internet pages using a web browser. In analternative embodiment the server 101 may communicate with dedicatedsoftware installed on the PC 102. In this alternative embodiment, thededicated software provides the graphical user interface.

[0210] The training system uses a server 101 which accesses a database110. Communication between the user's PC 102 and the server 101 isperformed using a telecommunications link. In an alternative embodiment,software is installed on the PC 102 of a user who wishes to use thetraining system. In this alternative embodiment, the software programsthe PC 102 to implement the database 110 on the hard disk of the user'sPC. An advantage of this embodiment is that the PC 102 need notcommunicate with a remote server. However, an advantage of operating thesystem using a central server 101 that is used by all user PCs 102 isthat improvements and upgrades may more readily be made to the system.For example, when using a server 101, it is relatively straightforwardto update an incorrect database entry for a particular foodstuff. In anembodiment where software for implementing the training system isinstalled separately on each PC 102 then it will be harder to update thedatabases as an updated database entry will need to be sent to each PC102.

[0211] In some embodiments, dedicated circuitry may be used to implementthe required functionality of the training system. However, for reasonof cost, it is expected that most embodiments will include an element ofsoftware. Such software may be supplied on a suitable data carrier suchas a floppy disk or a CD-ROM. Alternatively, software may be suppliedover a telecommunications channel such as the internet.

[0212] The training system uses circular charts to display the user'sfitness assessment and the user's goals. In an alternative embodimentother graphical formats may be used instead, for example column charts.However the use of circular charts is preferred as this provides anintuitive user interface for the user(s).

[0213] The training system of the first embodiment enables ice skatersto become more proficient at ice skating by helping such users toorganize their training schedules, eat appropriate foodstuffs and toperform physical activities appropriate to their aims. In an alternativeembodiment, the training system is be used to train other types ofsports persons. For example, in an alternative embodiment the database110 is modified to allow long distance runners to train effectively. Insuch an embodiment the database 110 is expanded so that as well ascontaining information primarily dedicated to training ice skater, thedatabase also contains information primarily dedicated to training longdistance runners. In such an alternative embodiment the tables 2224,2225 and 2232 are modified to include predetermined skill levelcategories for long distance runners together with descriptions of theskill categories of long distance runners. Table 2232 would also requiremodification to be keyed by the type of sport being performed by theuser (this is because table 2232 when described earlier included thescores expected of various ages of elite ice skaters, but did notinclude the corresponding scores that could be expected of various agesof long distance runners). In a yet further alternative embodiment,separate databases are used for different types of users. For example,ice skaters may use a first database 110 and long distance runners mayuse a second database. In the yet further embodiment, either a commonserver 101 is used to access the two databases, or separate servers areused, one for each database.

[0214] The training system of the first embodiment facilitates iceskaters to become more proficient at their sport. In an alternativeembodiment, the server 101 and a modified database facilitate a user to,for example, lose weight. In an yet further embodiment, a modifieddatabase facilitates a user to gain weight (for example body builderswho wish to increase their muscle mass).

[0215] In an alternative embodiment of the training system 100 describedabove, the presence of any injuries as entered at the web pages 2000 and2100 is used to modify the dietary assessment shown at web page 1700.Normally, a user's required protein intake was determined on the basisof his body weight. When a user has a soft tissue injury he will in somesituations require additional protein in order to allow his body torepair the damage. In an alternative embodiment, the server 101 isoperable to use the database 110 to determine whether the user has aninjury having a severity that exceeds a predetermined threshold. If so,then the suggested daily protein intake for the user is increasedaccordingly. Similarly, in alternative embodiments of the system 100 theuser's calcium intake in monitored. In the event that the user breaks abone then his recommended calcium intake is increased to facilitaterepair of the broken bone.

[0216] In the first preferred embodiment described above, the server 101compared the user's water intake with predetermined lower and upperlimits of 31 (litres) to 51 of water per day. In that embodiment theuser was deemed to be an ice skater (i.e. an athlete), due to the levelat which the user was training. In an alternative embodiment, the userneed not be deemed an athlete, in which case the server 101 calculatesthe user's fluid requirements based on the user's body weight. Forexample, the lower limits are set at 25.00 ml (milli-litres) and 30.00ml of water per kg of bodyweight per day, and the upper limits are setat 40.00 ml and 45.00 ml of water per kg per day. The server 101 alsoincreases the deemed water requirement by 500 ml for each hour ofexercise per day.

[0217] The training system of the first embodiment described abovecalculated the user's actual energy expenditure on the basis of theactivities performed by the user and the basal metabolic rate of theuser. In an alternative embodiment, the user's energy expenditure may becalculated on the basis of the training program suggested at web page1900, on the assumption that the user will perform the suggestedtraining schedule faithfully and that there will be little or differencebetween the suggested training and the actual training performed by theuser.

[0218] The training system of the first embodiment described above usedthe internet to transfer information between users, the server and thepayment server. In an alternative embodiment, dedicatedtelecommunications links may be used to transfer information. Suchdedicated telecommunications links may comprise wires or wireless links.

What is claimed is:
 1. A training system comprising: a databasecomprising information regarding the relevance of different physicalactivities to fitness categories; and a server for transferringinformation between a user and the database.
 2. A training systemaccording to claim 1, wherein the database comprises informationregarding the relevance of different physical activities to at least oneof the following fitness categories: flexibility, cardiovascular, localmuscular endurance, core stability, lower body strength and upper bodystrength.
 3. A training system according to claim 2, wherein the serveris operable to receive information from a user regarding the duration ofa physical activity that the user has performed and to calculate thecontribution of the physical activity performed to the user's fitness inat least one of the fitness categories.
 4. A training system accordingto claim 1, wherein the database comprises information regarding theenergy expenditure of the physical activities.
 5. A training systemaccording to claim 4, wherein the server is operable to receiveinformation from a user regarding the duration of a physical activitythat the user has performed and to calculate the energy expended by theuser as a result of the physical activity that the user has performed.6. A training system according to claim 1, wherein the server isoperable to receive from the user information regarding a fitnessprofile of the user, wherein the fitness profile comprises informationregarding the actual ability of the user to perform one or more measuresof physical fitness.
 7. A training system according to claim 6, whereinthe server is operable to receive an indication from the user of atarget physical fitness profile for the user.
 8. A training systemaccording to claim 7, wherein the server is operable to compare theactual fitness profile of the user with the target physical fitnessprofile of the user to generate difference information.
 9. A trainingsystem according to claim 8, wherein the server is operable to outputthe difference information to the user.
 10. A training system accordingto claim 9, wherein the server is operable to output the differenceinformation as a chart.
 11. A training system according to claim 1,wherein the server is operable to receive from the user an indication ofthe availability of the user for training.
 12. A training systemaccording to claim 7, wherein the server is operable to receive from theuser an indication of the availability of the user for training.
 13. Atraining system according to claim 12, wherein the server is operable togenerate a recommended training regime for the user as a function of thedifference information and the availability of the user for training.14. A training system according to claim 13, wherein the server isoperable to receive information from the user regarding the availabilityof the user for the recommended training regime, and wherein the serveris operable to modify the recommended training regime in accordance withthe availability of the user for the recommended training regime, togenerate a modified recommended training regime.
 15. A training systemaccording to claim 13, wherein the difference information comprisesfitness category difference information regarding the differencesbetween i) the actual fitness of the user in two or more fitnesscategories and ii) the target fitness of the user in two or more fitnesscategories, wherein the server is operable to compare the fitnesscategory difference information to determine for which of the two ormore fitness categories there is the greatest difference between theactual fitness of the user and the target fitness of the user, andwherein the server is operable to prioritize the suggested trainingregime for the fitness category in which there is the greatestdifference between the actual fitness of the user and the actual fitnessof the user.
 16. A training system according to claim 13, wherein theserver is operable to receive information from the user regarding a dateof a competition, and wherein the server is operable to reduce anintensity of the training in the recommended training regime in a run-upto a competition.
 17. A training system according to claim 13, whereinthe server is operable to receive information from the user regarding aninjury that the user has sustained, and wherein the server is operableto reduce an intensity of the training in the recommended trainingregime according to the information reg
 18. A training system accordingto claim 1, further comprising a payment server for processing afinancial transaction, wherein the payment server and the server areoperable to transfer data using a telecommunications link.
 19. A methodof training a user, comprising using a training system according toclaim
 1. 20. A computer program product storing processor executableinstructions for programming a processor to implement a training systemaccording to claim
 1. 21. A training system comprising: a databasecomprising information regarding the nutritional content of differentfoodstuffs; and a server for transferring information between a user andthe database.
 22. A training system according to claim 21, wherein thedatabase comprises information regarding the nutritional content offoodstuffs in at least one of the following categories: protein,carbohydrate, unsaturated fat, saturated fat and calcium.
 23. A trainingsystem according to claim 21, wherein the server is operable to receiveinformation from a user regarding the type of foodstuffs and quantity offoodstuffs that the user has consumed and wherein the server is operableto use the information stored in the database regarding the nutritionalcontent of the foodstuffs to calculate the actual nutrition gained bythe user as a result of the foodstuffs that the user has consumed.
 24. Atraining system according to claim 21, wherein the server is operable topredict a nutritional requirement of the user.
 25. A training systemaccording to claim 24, wherein the server is operable to predict thenutritional requirement of the user on the basis of an energyrequirement of the user.
 26. A training system according to claim 25,wherein the server is operable to receive information from the userregarding one or more physical activities that the user has performedand to calculate the energy requirement of the user on the basis of theone or more physical activities that the user has performed.
 27. Atraining system according to claim 26, wherein the server is operable touse information concerning a basal metabolic rate of the user tocalculate the energy requirement of the user.
 28. A training systemaccording to claim 24, wherein the server is operable to compare theactual nutrition gained by the user with the predicted nutritionalrequirement of the user.
 29. A training system according to claim 28,where the server is operable to output, to the user, informationregarding a difference between the actual nutrition gained by the userand the predicted nutritional requirement of the user.
 30. A trainingsystem according to claim 29, wherein the server is operable, on thebasis of the difference between the actual nutrition gained and thepredicted nutritional requirement, to output, to the user, informationspecifying modifications to a diet of the user for reducing thedifference between the actual nutrition gained and the predictednutritional requirement.
 31. A training system according to claim 28,wherein the server is operable to output information specifyingmodifications to the diet of the user in at least one of the followingcategories: protein, carbohydrate, unsaturated fat, saturated fat andcalcium.
 32. A training system according to claim 21, wherein the serveris operable to receive information from a user regarding the nutritionalcontent of a foodstuff, and to cause the information to be stored in thedatabase.
 33. A training system according to claim 32, wherein theserver is operable to receive information from two or more usersregarding the nutritional content of foodstuffs, and wherein the serveris operable to prevent a first user from accessing information providedby a second user.
 34. A training system comprising: a database forstoring information regarding a goal of a user; and a server fortransferring information between a user and the database.
 35. A trainingsystem according to claim 34, wherein the server is operable to prompt auser to enter information regarding a long term goal.
 36. A trainingsystem according to claim 34, wherein the server is operable to prompt auser to enter information regarding a medium term goal.
 37. A trainingsystem according to claim 34, wherein the database stores informationregarding a short term goal.
 38. A training system according to claim34, wherein the server is operable to receive information from the userindicating an performance of the user with regard to one or more goals,wherein the server is operable to compare the performance with the oneor more goals, and wherein the server is operable to output to the userinformation representing a result of the comparison.
 39. A trainingsystem according to claim 38, wherein the server is operable to outputthe information to the user in the form of a pie chart.
 40. A trainingsystem according to claim 38, wherein the server is operable to promptthe user to enter information specifying what the user regards aspriority goals, and wherein the server is operable to output to the userinformation representing the result of the comparison for only the goalsspecified by the user as priority goals.
 41. A training systemcomprising: a database for storing information regarding an injurysustained by a user; and a server for transferring information between auser and the database.
 42. A training system according to claim 41,wherein the server is operable to receive information from the userspecifying the location of an injury.
 43. A training system according-toclaim 41, wherein the server is operable to receive information from theuser specifying a severity of an injury.
 44. A training system accordingto claim 41, wherein the server is operable to receive information fromthe user specifying a date that the injury was sustained.
 45. Acomputerized system for devising a training scheme for a sports personcomprising: first computer means for processing data, which has adatabase which stores for each of a plurality of sports a record of anidealized physiological profile; wherein: each sports person using thesystem inputs a selection of a sport and, in response to enquiriesgenerated by the first computer means, information concerning his/herphysiological profile; and the first computer means compares thephysiological profile input by each sports person with the idealizedphysiological profile for the relevant sport and from this comparisonformulates a training regime which is relayed to the sports person. 46.A system as claimed in claim 45 wherein: the first computer is connectedvia a telecommunications network to a plurality of remotely locatedcomputer means; and each sports person uses one of the plurality ofremotely located computer means to input data to the first computermeans via the telecommunications network and to receive enquiries andthe formulated training regime from the first computer means via thetelecommunications network.
 47. A system as claimed in claim 46 wherein:the first computer means for each sports person scales the storedidealized physiological profile for the selected sport having regard tothe weight of the sports person and compares the input physiologicalprofile with the scaled identical physiological profile when formulatingthe training regime.
 48. A system as claimed in claim 47 wherein: thefirst computer means for each sports person scales the stored idealizedphysiological profile for the selected sport having regard to the genderof the sports person and compares the input physiological profile withthe scaled idealized physiological profile when formulating the trainingregime.
 49. A system as claimed in claim 47 wherein: the first computermeans for each sports person scales the stored idealized physiologicalprofile for the selected sport having regard to the age of the sportsperson and compares the input physiological profile with the scaledidealized physiological profile when formulating the training regime.50. A system as claimed in claim 45 wherein: each stored record of anidealized physiological profile comprises measurements taken from theset of: maximum capacity to transport oxygen to tissues; percentage ofmaximum oxygen transport capacity that may be maintained withoutaccumulation of lactate; greatest weight that can be lifted once;maximum power; maximum number of sit-ups performed without rest; maximumnumber of push-ups performed without rest; maximum number of crunchesperformed without rest; and local muscle endurance; and the firstcomputer means generates enquiries relayed to the sports person whichrequire data matching the measurements stored for the idealizedphysiological profile.
 51. A system as claimed in claim 45 wherein: thetraining regime formulated by the first computer means comprisesrecommendations for training session frequency.
 52. A system as claimedin claim 45 wherein: the training regime formulated by the firstcomputer means comprises recommendations for heart rate during training.53. A system as claimed in claim 46 wherein: each sports person inputsperiodically, in response to enquiries generated by the first computermeans, data to establish a psychological profile for the sports person;and the first computer means compares each input psychological profilefor each sports person with a stored base psychological profile for thesports person and dependent on the comparison can modify the trainingregime formulated by the first computer means.
 54. A method of devisinga training scheme for a sports person comprising the steps of: storingon a database on the first computer means an idealized physiologicalprofile for each of a plurality of sports; a sports person inputting tothe first computer means a selection of a sport and, in response toenquiries generated by the first computer means, information concerninghis/her physiological profile; and a computer program running on thefirst computer means comparing the physiological profile input by eachsports person with the idealized physiological profile for the relevantsport and from the comparison formulating a training regime which isthen relayed to the sports person.
 55. A computerized system fordevising a training scheme for a sports person comprising: firstcomputer means for processing data, which has a database which stores arecord of an pre-programmed physiological profile; wherein each sportsperson using the system inputs, in response to enquiries generated bythe first computer means, information concerning his/her physiologicalprofile; each sports person using the system can vary the pre-programmedphysiological profile by inputting a target or targets selected fromoptions provided by the first computer means; the first computer meanscompares the physiological profile input by each sports person with thevaried physiological profile selected by the sports person and from thiscomparison formulates a training regime which is relayed to the sportsperson.